package cn.hairui.blog.service;

import cn.hairui.blog.model.Album;
import cn.hairui.blog.model.AlbumImg;
import org.springframework.stereotype.Service;

import java.util.List;
import java.util.Map;

/**
 * @author lihairui
 * @version V1.0
 * @date: 2019/7/5 22:07
 */
@Service
public interface AlbumService {

    /**
     * 展示最新上传照片（必须是公开相册里面的）
     *
     * @return
     */
    public AlbumImg findLatestImg();

    /**
     * 查询只对游客和普通用户展示的相册信息
     *
     * @return
     */
    List<Album> findGust();

    /**
     * 查询公开的和自己管理的相册
     *
     * @param username
     * @return
     */
    List<Album> findManager(String username);

    /**
     * 获取所有相册内容
     *
     * @return
     */
    List<Album> list();

    /**
     * 获取相册下面照片数量
     *
     * @param id
     * @return
     */
    Integer countImg(Integer id);

    /**
     * 查询相册信息
     *
     * @param id
     * @return
     */
    Album find(int id);

    /**
     * 查询相册下的所有照片内容
     *
     * @param id
     * @return
     */
    List<AlbumImg> findImgsByAlbuId(int id);

    List<Map> listMgr();

    void updateIsShow(int id, String flag);

    List<Map> findImgsJsonByAlbuId(int id);

    /**
     * 新增相册
     *
     * @param album
     */
    void add(Album album);

    /**
     * 通过id删除相册
     *
     * @param id
     */
    void deleteById(int id);
}
